/**
 * 单元名称：配置JSAPI鉴权
 * 单元功能：1、鉴权是针对微应用页面实现的。如果当前页面用到需要鉴权的JSAPI，此页面就需要执行鉴权流程。钉钉开放平台会获取当前页面中需要鉴权的JSAPI，然后执行鉴权。
 *          官方文档：https://open.dingtalk.com/document/orgapp/configure-jsapi-authentication
 *          2、获取微应用免登授权码
 *          官方文档：https://open.dingtalk.com/document/orgapp/jsapi-request-auth-code
 * 所属模块功能：
 * 创建人：yan
 * 创建时间：230823
 * 修改人：
 * 修改时间：
 */
import * as dd from 'dingtalk-jsapi'; // 此方式为整体加载，也可按需进行加载

console.log(dd);
/*dd.config({
  agentId: '', // 必填，微应用ID
  corpId: '',//必填，企业ID
  timeStamp: '', // 必填，生成签名的时间戳
  nonceStr: '', // 必填，自定义固定字符串。
  signature: '', // 必填，签名
  type:0,   //选填。0表示微应用的jsapi,1表示服务窗的jsapi；不填默认为0。该参数从dingtalk.js的0.8.3版本开始支持
  jsApiList : [
    'biz.contact.choose',
  ] // 必填，需要使用的jsapi列表，注意：不要带dd。
});

dd.error(function (err) {
  alert('dd error: ' + JSON.stringify(err));
})//该方法必须带上，用来捕获鉴权出现的异常信息，否则不方便排查出现的问题

dd.ready(function() {
  dd.biz.contact.choose({
    multiple: true, //是否多选：true多选 false单选； 默认true
    users: ['10001', '10002', ...], //默认选中的用户列表，员工userid；成功回调中应包含该信息
    corpId: 'dingb4ff1079f****54', //企业id
    max: 10, //人数限制，当multiple为true才生效，可选范围1-1500
    onSuccess: function(data) {
      /!* data结构
        [{
          "name": "张三", //姓名
          "avatar": "
  http://g.alicdn.com/avatar/zhangsan.png
  " //头像图片url，可能为空
          "emplId": '0573', //员工userid
         },
         ...
        ]
      *!/
    },
    onFail : function(err) {}
  });
}*/

dd.ready(function() {
  // 调用requestAuthCode方法
  dd.runtime.permission.requestAuthCode({
    corpId: "ding0f76528942e8d7ae35c2f4657eb6378f", // 企业id
    onSuccess: function (info) {
      let code = info.code // 通过该免登授权码可以获取用户身份
      console.log('code',code);
    }});
});
